﻿using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;

namespace SLogo.Drawing
{
    /// <summary>
    /// 绘图类的基类
    /// </summary>
    public class SlogoDrawing
    {
        /// <summary>
        /// 画笔颜色
        /// </summary>
        public virtual void SetPenColor(Color color)
        {
        }


        /// <summary>
        /// 画起点为(x1,y1)，终点为(x2,y2)直线
        /// </summary>
        public virtual void Line(double x1, double y1, double x2, double y2)
        {
        }

        /// <summary>
        /// 画以(x,y)为起点，高为height，宽为width的矩形
        /// </summary>
        public virtual void Rectangle(double x, double y, double width, double height,double angle)
        {
        }

        /// <summary>
        /// 以color色填充以(x,y)为起点，高为height，宽为width的矩形
        /// </summary>
        public virtual void Rectangle(double x, double y, double width, double height,double angle, Color color)
        {
        }

        /// <summary>
        /// 画椭圆，以(x,y)为基准点在矩形高height，宽width范围内画椭圆
        /// </summary>
        public virtual void Ellipse(double x, double y, double width, double height, double angle)
        {
        }

        /// <summary>
        /// 以color色填充以(x,y)为基准点在矩形高height，宽width范围内画椭圆
        /// </summary>
        public virtual void Ellipse(double x, double y, double width, double height, double angle, Color color)
        {
        }

        /// <summary>
        /// 绘制多边形
        /// </summary>
        /// <param name="points"></param>
        public virtual void Polygon(PointF[] points)
        {
        }

        /// <summary>
        /// 以color填充多边形
        /// </summary>
        public virtual void Polygon(PointF[] points, Color color)
        {
        }


        /// <summary>
        /// 输出起点为(x,y),偏移角度angel的字符串
        /// </summary>
        public virtual void Text(string outStr,double angle,double x,double y)
        {
        }

        /// <summary>
        /// 清空画板
        /// </summary>
        public virtual void Clear(Color color)
        {
        }

        /// <summary>
        /// 裁剪加边框并输出二进制码
        /// </summary>
        public virtual void Print(double width, double height, double top, double buttom, double left, double right)
        {
        }

    }
}
